home *** CD-ROM | disk | FTP | other *** search
/ Deutsche Edition 1 / Deutsche Edition 1.iso / amok / amok_lha / amok15.lha / Seafarers_Manual / Source / C2P6.mod < prev    next >
Text File  |  1993-08-15  |  1KB  |  39 lines

  1. MODULE C2P6;   (* Chapter 2  Problem 6 *)
  2.            (* Calculate area of a triangle *)
  3.  
  4.    (* From the book "Modula-2  A Seafarer's Manual and Shipyard Guide" *)
  5.    (* Page 41   adapted "M2Amiga Modula-2"   26 Feb 1988 *)
  6.  
  7. FROM InOut IMPORT WriteLn,
  8.           WriteString;
  9. FROM RealInOut IMPORT ReadReal,
  10.                       WriteReal;
  11. FROM MathLib0 IMPORT sqrt;
  12.                                     
  13. VAR
  14.   a, b, c,     (* sides of triangle *)
  15.   s,        (* help variable for calculation *)
  16.   area : REAL;    (* area of triangle *)
  17.   
  18. BEGIN
  19.   WriteString ("Calculate area of a triangle: ");
  20.   WriteLn; WriteLn; WriteLn;
  21.   WriteString ("Enter length of side a in inch: ");
  22.   ReadReal (a);
  23.   WriteString ("Enter length of side b in inch: ");
  24.   ReadReal (b);
  25.   WriteString ("Enter length of side c in inch: ");
  26.   ReadReal (c);
  27.   WriteLn; WriteLn;
  28.   (* Calculation area of triangle with formula
  29.      a = square root [s * (s-a) * (s-b) * (s-c)]
  30.      where  s = (a+b+c) / 2                      *)
  31.   s := (a + b + c) / 2.0;
  32.   area := sqrt(s * (s-a) + (s-b) * (s-c));
  33.   WriteString ("The area of the triangle is ");
  34.   WriteReal (area,10,3);
  35.   WriteString (" square inch");
  36.   WriteLn;
  37.  
  38. END C2P6.
  39.